在php中使用mongodb必须使用 mongodb 的 php驱动。
MongoDB PHP在各平台上的安装及驱动包下载请查看:PHP安装MongoDB扩展驱动
如果使用的是 PHP7,请参阅:MongoDB PHP7
确保连接及选择一个数据库
为了确保正确连接,需要指定数据库名,如果数据库在mongoDB中不存在,mongoDB会自动创建
代码片段如下:
1 2 3 4
| <?php $m = new MongoClient(); $db = $m->test; ?>
|
创建集合
创建集合的代码片段如下:
1 2 3 4 5 6
| <?php $m = new MongoClient(); $db = $m->test; $collection = $db->createCollection("runoob"); echo "集合创建成功"; ?>
|
执行以上程序,输出结果如下:
插入文档
在mongoDB中使用 insert() 方法插入文档:
插入文档代码片段如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| <?php $m = new MongoClient(); $db = $m->test; $collection = $db->runoob; $document = array( "title" => "MongoDB", "description" => "database", "likes" => 100, "url" => "http://www.runoob.com/mongodb/", "by", "菜鸟教程" ); $collection->insert($document); echo "数据插入成功"; ?>
|
执行以上程序,输出结果如下:
然后在 mongo 客户端使用 db.runoob.find().pretty(); 命令查看数据:
查找文档
使用find() 方法来读取集合中的文档。
读取使用文档的代码片段如下:
1 2 3 4 5 6 7 8 9 10 11
| <?php $m = new MongoClient(); $db = $m->test; $collection = $db->runoob; $cursor = $collection->find(); foreach ($cursor as $document) { echo $document["title"] . "\n"; } ?>
|
执行以上程序,输出结果如下:
更新文档
使用 update() 方法来更新文档。
以下实例将更新文档中的标题为’ MongoDB 教程’, 代码片段如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| <pre> <?php $m = new MongoClient(); $db = $m->test; $collection = $db->runoob; $collection->update(array("title"=>"MongoDB"), array('$set'=>array("title"=>"MongoDB 教程"))); $cursor = $collection->find(); foreach ($cursor as $document) { echo $document["title"] . "\n"; } ?>
|
执行以上程序,输出结果如下:
然后在 mongo 客户端使用 db.runoob.find().pretty(); 命令查看数据:
删除文档
使用 remove() 方法来删除文档。
以下实例中将移除 ‘title’ 为 ‘MongoDB 教程’ 的一条数据记录。, 代码片段如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| <?php $m = new MongoClient(); $db = $m->test; $collection = $db->runoob; $collection->remove(array("title"=>"MongoDB 教程"), array("justOne" => true)); $cursor = $collection->find(); foreach ($cursor as $document) { echo $document["title"] . "\n"; } ?>
|
除了以上实例外,在php中还可以使用findOne(), save(), limit(), skip(), sort()等方法来操作Mongodb数据库。
更多的操作方法可以参考 Mongodb 核心类:http://php.net/manual/zh/mongo.core.php。